package br.edu.ifrn.dao;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.Query;

import br.edu.ifrn.model.Usuario;

public class UsuarioDAO extends AbstractDAO {
	public UsuarioDAO(EntityManager em) {
		AbstractDAO.em = em;
	}
	
	@Override
	public <E> List<E> listar() {
		Query q = em.createQuery("Select u From Usuario u");
		return q.getResultList();
	}
	
	public Usuario logar(String email, String senha) {
		Usuario usuario = null;
		Query q = em.createQuery("SELECT u FROM Usuario u WHERE email = ?1 AND senha = ?2");
		q.setParameter(1, email);
		q.setParameter(2, senha);
		
		try {
			usuario = (Usuario) q.getSingleResult();
		} catch (NoResultException ex) {
			return null;
		}
		
		return usuario;
	}
}
